Electronic sports playbook and video annotation system

ABSTRACT

An electronic sports playbook and video annotation system includes a device with a memory coupled to a processor that stores instructions that, when executed by the processor, cause the processor to generate sports playbook content based on coordinate or image data. The processor is configured to detect an object (e.g., a player, etc.) on a surface (e.g., court image, or play image such as a static play drawing or video recording frame), detect a drawing of a path relating to the object (e.g., by user input device or with image processing, machine learning, or other heuristic techniques, etc.), and determine an action (e.g., a pass, a dribbling, a cut, a screen, a handoff, etc.) associated with the object based on at least an attribute of the object (e.g., does the player have the ball?, etc.) and detected path relating to the object.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.17/081,847, filed Oct. 27, 2020, which is a continuation of U.S.application Ser. No. 16/592,761, filed Oct. 3, 2019 (issued as U.S. Pat.No. 10,861,200 on Dec. 8, 2020), which claims priority to and thebenefit of U.S. Provisional Application No. 62/740,934, filed on Oct. 3,2018. The entire content of all of the above referenced Applications andPatents are incorporated herein by reference in their entirety.

BACKGROUND 1. Field

Some embodiments of the present disclosure relate generally to providinga system and method for creating, animating, editing, and usingdiagrams.

2. Related Art

Creating diagrams outlining the positions and movements of objects andpeople can be a time consuming process. In the context of sports, acoach is tasked with drawing plays, drills, and concepts by hand on awhite board, chalkboard, tablet or pad of paper. Using physicalinstruments such as a pen and paper is generally a fairly quick and easyprocess, except it does not necessarily allow for fast modification,reproduction, and/or distribution. Many companies have attempted tomimic the experience of using a pen and paper with the use of moderntechnology. For example, the availability of touch screens on devicessuch as tablet computers and smart phones has provided a new medium foruse.

Previous solutions for implementing sports diagrams on mobile computingdevices have provided a quick means for drawing a player positions andactions, however setting the various options for each drawn line tendsto be a very tedious process. For example, past solutions have neededuser input to draw a line indicating a player's movement and then set anaction type (e.g., in basketball an action type may be acut/screen/dribble/etc.) as well as indicate other options such as ballpossession or color. Setting these options can take an enormous andfrustrating amount of time and thereby leads to user dissatisfaction.

The above information is only for enhancement of understanding of thebackground of embodiments of the present disclosure, and therefore maycontain information that does not form the prior art.

BRIEF DESCRIPTION OF THE DRAWINGS

Some embodiments can be understood in more detail from the followingdescription taken in conjunction with the accompanying drawings, inwhich:

FIG. 1 depicts a general usage architecture for creating and accordingto various embodiments;

FIG. 2 depicts an architectural diagram of a generation and consumptionsystem according to various embodiments;

FIG. 3 depicts an example basketball play according to variousembodiments;

FIGS. 4A-4H depict example diagrams according to various embodiments;

FIG. 5 depicts a method of predictive drawing and automatic animationgeneration according to various embodiments;

FIG. 6 depicts a play having a plurality of phases according to variousembodiments;

FIG. 7 depicts an example animation according to various embodiments;

FIG. 8 depicts an example walkthrough and notes of a play according tovarious embodiments;

FIGS. 9A and 9B depict different playbook representations according tovarious embodiments;

FIG. 10 depicts an embedded video according to various embodiments;FIGS. 11A-F depict various stages of an animation according to variousembodiments;

FIGS. 12A and 12B depict examples of user position highlightingaccording to various embodiments;

FIG. 13 depicts an example menu for creating or editing a play, chapteror group according to various embodiments;

FIG. 14 depicts a method of the generation and playing of memorizationgames according to various embodiments;

FIGS. 15A-15D depict potential questions according to variousembodiments;

FIGS. 16A and 16B depict memory games that involve embedded videosaccording to various embodiments;

FIGS. 17A-17C depict memory games according to various embodiments;

FIGS. 18-20 depict various reports that may be generated and displayedbased on user use of the system according to various embodiments; and

FIG. 21 depicts an example method of distributing diagrams and updatesto users.

SUMMARY

Aspects of embodiments of the present invention relate to a method andsystem for generating diagrams. In various embodiments, the system andmethod may be utilized to generate sports related diagrams, animations,and tests.

Aspects of embodiments of the present invention allow for a user togenerate a diagram by placing one or more objects onto a surface receivean input relating to a path representing the movements and actions ofthe objects. The system may draw the path on the surface and mayautomatically adjust the drawn path according to the action.

In various embodiments, multiple objects and paths may be introduced tothe surface and the drawing may be further modified according theactions and paths of the objects.

In various embodiments, the system and method may predict an actionbased on at least one of a first object, a first path, a second object,a second path, a third object, and a third path.

In various embodiments, an object may be a player, a ball, a defender,or a coach.

In various embodiments, an animation may be automatically generatedaccording to the path and the action. The animation may be modifiedaccording to the multiple objects, actions, and paths and a timing ofthe animation may be generated based on decencies and actions betweenthe different objects, paths, and actions.

In various embodiments, multiple diagrams may be bundled into one ormore playbooks.

In various embodiments, a memory game question may be generated usingthe diagrams.

In various embodiments, the diagrams may be viewed by a user with anelectronic device.

In various embodiments, a perspective of the diagrams may be associatedwith a position selected by the user.

In various embodiments, the memory game questions may be generatedaccording to the position of the user.

In various embodiments, a diagram creator device includes a display, atouch screen covering the display, a processor coupled to the displayand the touch screen, and a memory coupled to the processor. The memorystores instructions that, when executed by the processor, cause theprocessor to: receive an input for selecting a surface; display thesurface on the display; detect the placement of a first object on thesurface; detect a drawing of a first path of the first object from afirst location to a second location; determine a first action associatedwith at least one of the first object, the first path, the firstlocation, and the second location; and draw on the surface a firstdiagram associated with the first action.

In various embodiments, the instructions that, when executed by theprocessor, further cause the processor to detect the placement of asecond object on the surface, detect the drawing of a second path of thesecond object from a third location to a fourth location, and determinea second action associated with at least one of the second object, thesecond path, the third location, or the fourth location.

In various embodiments, the instructions that, when executed by theprocessor, further cause the processor to generate an animation inaccordance with at least one of the first object, the first path, thefirst location, and the second location.

In various embodiments, the instructions that, when executed by theprocessor, further cause the processor to generate an animation inaccordance with at least one of the second object, the second path, thethird location, and the fourth location.

In various embodiments, the first object includes a first player and thesecond object comprises a ball.

In various embodiments, the instructions that, when executed by theprocessor, further cause the processor to: detect the placement of athird object comprising a second player the surface; detect the drawingof a third path of the third object from a fifth location to a sixthlocation; determine a third action associated with at least one of thethird object, the third path, the fifth location, or the sixth location;and draw on the surface a second diagram associated with the firstaction, the second action, and the third.

In various embodiments, the first action includes moving from the firstlocation to the second location, the second action includes dribblingthe ball and passing the ball to the second player, and the third actionincludes receiving the ball.

In various embodiments, the instructions that, when executed by theprocessor, further cause the processor to generate an animation inaccordance with the first action, the second action and the thirdaction, wherein the animation is sequentially timed in accordance withfirst location, second location, third location, fourth location, fifthlocation, sixth location, first action, second action, and third action.

DETAILED DESCRIPTION

Features of the inventive concept and methods of accomplishing the samemay be understood more readily by reference to the following detaileddescription of embodiments and the accompanying drawings. Hereinafter,embodiments will be described in more detail with reference to theaccompanying drawings, in which like reference numbers refer to likeelements throughout. The present disclosure, however, may be embodied invarious different forms, and should not be construed as being limited toonly the illustrated embodiments herein. Rather, these embodiments areprovided as examples so that this disclosure will be thorough andcomplete, and will fully convey the aspects and features of the presentdisclosure to those skilled in the art. Accordingly, processes,elements, and techniques that are not necessary to those having ordinaryskill in the art for a complete understanding of the aspects andfeatures of the present disclosure may not be described. Unlessotherwise noted, like reference numerals denote like elements throughoutthe attached drawings and the written description, and thus,descriptions thereof will not be repeated. In the drawings, the relativesizes of elements, layers, and regions may be exaggerated for clarity.

In various embodiments, a system and method for generating diagrams maybe configured to provide a fast and efficient way for creating diagrams.In particular, the diagrams may be suitable for displaying locations,timing, and sequences for one or more objects. For example, the diagramsmay be suitable for displaying sports diagrams such as diagram fordisplaying an offensive or defensive sports play. In variousembodiments, the diagrams may be utilized in various industrial oreducational applications. For example, the diagrams may be suitable foran architectural drawing, a cutting pattern, a carpentry pattern, ametal cutting pattern, a surveying pattern, a geometry lesson, or anyother diagram produced in a plane.

In various embodiments, the generated diagrams may be stored anddistributed. In various embodiments, a system and method for consumingthe generated diagrams is also provided.

For example, the system may be used to quickly and easily generate a setplay or plurality of set plays (e.g., a playbook). In variousembodiments, a user may provide a user input on player positions, playermovement, and any other relevant movement or locations (e.g., balllocation and movement) using one or more generating devices, and thesystem may automatically predict the type of actions being undertaken byeach player by associating the user input with a past user input. Invarious embodiments, the generating devices may include any suitableinput devices including computing devices such as laptop, tablet, orsmart phone and/or sensors such as GPS, Bluetooth, NFC, or othersuitable motion/position capturing sensors. In various embodiments, thegenerating devices may include cameras and other optical sensors and mayidentify locations and movements using image processing, machinelearning, and other heuristic techniques.

In various embodiments, the system is also configured to automaticallycreate an animation for the process (e.g., a play) that has been createdby predicting a timeline of an object's (e.g., a player and/or ball)movement. The system also provides a user with the ability to modify theautomatically generated animations. For example, in various embodiments,a user may modify the animations and timing using a simple drag and dropfeature of a graphical user interface (GUI). Once a new play is createdor modified, the 20 play may be saved (e.g., in a team playbook databaseoperating on a storage server) and distributed to one or more consumingdevices (e.g., a user computer, smart phone, tablet computer, or othersuitable device).

In various embodiments, the consuming devices provide an interface forconsuming and interacting with the generated data. For example, aconsuming device 25 may allow for a user to review one or more plays inthe playbook, watch animations and videos associated with the one ormore plays, play memory games associated with the one or more plays,track the users workouts and health, and allow the user topersonalize/customize their experience. For example, in basketball,there may be five players from two teams on the court and each of theplayers may have a specific series of movements for a play based on aposition that the user plays. For example, a basketball teamtraditionally plays with a center, two forwards, and two guards on thecourt at any given time (although the positions may be modified). Invarious embodiments, a user may personalize their experience based onthe position that they play.

FIG. 1 depicts a general usage architecture for creating and accordingto various embodiments.

Referring to FIG. 1 , in various embodiments the diagram generation andconsumption system 100 may utilize multiple electronic devices 102-108(e.g., portable electronic devices). For example, both contentgenerating devices and content consuming devices may include electronicdevices 102-108 such as tablet computers 104, 106, laptop computers 102,smart phones 108, or other electronic devices having a display and inputmechanism (e.g., such as a touch screen or mouse input) that are alsocapable of communicating over a network 110 (e.g., the Internet). Invarious embodiments, the content generating devices and the contentcomputing devices 102-108 may be configured to access a remote storageserver 120 that stores the various content generated on the generatingdevice for usage by the consuming device. For example, the contentgenerating device may be used to create and modify the content and maythen upload the generated content to the storage server 120. The contentconsuming device may download the content and provide feedback to thestorage server regarding the consumption of the content. For example,the feedback may include the type of content consumed, the quantity ofcontent that was consumed, the time spent consuming it, scoresassociated with the consumption (e.g., test scores, memorization gamescoring, etc.), etc.

In various embodiments, the content may include a playbook havinganimated plays [1506][17 a-f], video examples [1502][1600], contextualnotes [1505], and play call GIFs [1503]. The playbook may also beconfigurable based on user position and allows for plays to be modified.For example, the playbook may allow for the user to mirror the executionof the play across an axis [1500 a][1500 b][1501 a][1501 b]. In variousembodiments, the content may include personalized object, action,notation highlighting, spotlight focusing and or other methods to callattention to the user's relevance to the displayed content. [1800a][1800 b]

In various embodiments, the memorization games may include randomizedquestions, recognition games with matching, animations and video, andresponsibility games requiring users to draw their movements. The gamesmay include lightning rounds featuring progressive scoring. Final scoresmay be reported and added to a team leader board.

FIG. 2 depicts an architectural diagram of a generation and consumptionsystem according to various embodiments.

Referring to FIG. 2 , in various embodiments, the system 200 includescontent consumer devices 210 and content generation (e.g., creation)devices 220. Content consumer devices 210 may include a content viewingmodule 230 configured to present the various types of content accessibleby the system 200. For example, the content viewing module 230 mayinclude a diagram module 232, a games module 234, a reports module 236,a video module 238, and a personalization module 240. In variousembodiments, the diagrams module 232 is configured to access, display,and allow for interaction with the various diagrams from a playbook. Invarious embodiments, the diagrams module 232 may track user usage todetermine which plays the user has accessed and how much time the userhas spent viewing each play and/or playbook. In various embodiments, thegames module 234 is configured to allow for the user to play memorygames, score the user's proficiency at the games, and log the gamesplayed by the user, the time spent by the user playing the games, thenumber of games played, and the scores achieved. In various embodiments,the video module 238 may be configured to play videos (e.g., gamerelated footage) for viewing by the user, and log the videos played bythe user and the time spent watching videos. In various embodiments,report module is configured to display feedback regarding theconsumption of content by the user. For example, the reports module 236may be configured to receive the information logged by the diagramsmodule 232, the games module 234, and the video module 238 and providetextual and graphical representations of the user's use and interactionwith the content viewing module 230. In various embodiments, the contentviewing module 230 may include a personalization module 240 configuredto receive a user input (e.g., a player position) and provide the inputto the other modules for modifying their content and/or behavior. Forexample, when the playbook is for a sport such as basketball, a user mayneed to study plays based on their position. For example, a point guardmay have more dribbling and passing than a forward who may set morescreens and off-ball movement. Thus, the system may be modified topresent the most relevant information for a user. For example, a usermay input their player position to the personalization module 240 andthe diagrams module 232 may be provided with the position informationand modified to show diagrams with the perspective of the playerposition. Similarly, the games module 234 may be modified to test theplayer's knowledge of their specific position. The users may alsopersonalize the operation of the content viewing module.

In various embodiments, the content viewing module 230 may include othersuitable modules. For example, in various embodiments, the contentviewing module 230 may also include a game plan module for displayingteam strategies for achieving various team and player objectives. Invarious embodiments, the content viewing module 230 may include aworkout and/or nutrition module for tracking the user's participation invarious exercise activities, game related drills, and nutritionalregimen (i.e., a user's diet).

In various embodiments, a content creator device 220 may operate acontent creation module 250. The content creation module 250 may includea tool for creating diagrams, a diagram generation module 252 forcreating plays, video module 254 for providing videos, an animationmodule 256 for creating animations based on the plays, and a gamegeneration module 258 for generating games.

In various embodiments, the diagram generation module 252 may allow auser to design a diagram quickly and efficiently. For example, the usermay provide an input, such as a touch input on a selected background.For example, the selected background may be of an architectural drawing,a cutting pattern, a carpentry pattern, a metal cutting pattern, asurveying pattern, a football field, a soccer field, a half of abasketball court, a volleyball court, or any other diagram produced in aplane (i.e., the background may be based on a selected sport orindustry). A user may then provide an input to overlay objects onto theselected background. For example, the user may provide a touch or amouse input to position players, objects, and paths. In variousembodiments, the system may provide smoothing based on the user input toprovide an experience similar to writing on a traditional fixed mediumsuch as a whiteboard or chalkboard.

In various embodiments, the diagramming of a play may include balllocation. For example, a diagram for a basketball play may include acoded line based on who has the ball and the action being taken. Forexample, a player with the ball that is dribbling may be shown movingalong a path with a zig zag or similar line while passing the ball maybe represented by a dashed line. In various embodiments, the system mayutilize predictive drawing. For example, the system begins with eachplayer location and a ball location (e.g., a player with possession ofthe ball). The system may then use the relative sequencing, relativestart timing, starting location, relative end timing, ending location,and classification or identification of all actions to predictivelydraw. For example, at any relative point in time of a drawing/animation,the system uses the input data received to understand what each objecthas done to that point (i.e., location, travel, and actionclassification) and where their current location and possession status(i.e., who has the ball). At any relative point in time of adrawing/animation, the system may utilize the input data received tothat point for a “Next Action” object to understand their currentlocation and possession status. After receiving a “Next Action” (e.g.,that has not been predicted or animated) input data from source, thesystem is configured to run the prediction algorithms as input data isreceived. Thus, based on the object's action location, path, startingand ending possession status, relative locations and possession statusof other objects including their entire action path between start andend locations may be utilized to derive the most likely intended actionclassification, object path and ending location, animation sequence,animation duration/velocity, and/or animation relative start and endtiming.

For example, when a first player has the ball, a line from the player'sstarting position to another location on the court may be automaticallydrawn as the player dribbling the ball. Similarly, when a line is drawnfrom the first player with the ball to a second player, the system mayinfer a pass. Then, a subsequent movements from the second player may beautomatically assumed to be a dribble, a pass, or a shot. A user mayalso use taps and gestures to toggle different options for the diagram.For example, after drawing the path of a player, the user may tap at theend location to select that the player will set a screen.

In various embodiments, the animation module 256 may automaticallygenerate animations during the creation of the diagrams. For example,the creation of a diagram using the diagram module 252 allows for theanimation module to automatically create a timeline for the playermovements. For example, the timeline of the user diagramming the playmay provide guideposts for automatically generating an animation by theanimation module 256. For example, if a first player has the ball at afirst location and then passes the ball to a second player at a secondlocation, the second player would not move from the second locationuntil receiving the pass. Thus, the diagram module 252 and animationmodule 256 may infer that any diagrammed subsequent movements by thesecond player happen after the second player receives the pass.Similarly, if a first player is diagrammed as setting a screen, thefirst player would be expected to remain stationary until a secondplayer passes by the location of the first player (e.g., to use thescreen). Thus, the sequencing and timing may be inferred based on thelocation of the ball. In various embodiments, the animation sequencingmay automatically be displayed to the user while the user is diagrammingthe play and the user may adjust the timing. For example, the user maydrag a player's animation to a different location on a timeline. Theuser may also expand or condense the timing as needed to space theplayer motion. The player motion may also be set to a normalizedvelocity for each player, or some player movements may be set as fasteror slower. In some embodiments, the diagram module 252 and the animationmodule 256 may be combined into a single module. Similarly, the gamesmodule 258 may also be integrated with the diagram module 252 and/or theanimation module 256.

In various embodiments, the game module 258 may utilize the playerpositions and timing generated in the diagram module 252 and generateone or more questions related to the individual player making themovement.

FIG. 3 depicts an example basketball play according to variousembodiments.

Referring to FIG. 3 , in various embodiments the diagram generation andconsumption system 100 may be used to generate and view one or morebasketball plays included in a playbook. For example, a play may includea suitable court, field, or map as well as any suitable number ofplayers and player/ball movements. In various embodiments, a play 300may be a basketball play for use on a basketball court 360. Basketballis typically played using five players on each team, however, basketballmay be played with any suitable number of layers (e.g., one on one, twoon two, three on three, etc.). The play 300 includes five players 310,320, 330, 340, 350. The players 310, 320, 330, 340, 350 may each have anassigned position (e.g., point guard, shooting guard, forward, powerforward, and center) or the play may not include any particularpositions. A first player 310 may be in possession of a ball and theplay 300 may direct the first player 310 dribble along a first path 312and pass the ball along a second path 314. The second player 320 andthird player 330 may be directed to move along designated paths 322,232. The fourth player 340 and fifth player 350 may remain in the samelocation.

In various embodiments, as the user is drawing a diagram, the system(e.g., the diagram module 252)

In various embodiments, the diagram may also include defensive playerlocations and include defensive player movements, line of sight, etc. Insome embodiments, diagrams and animations may be included based ondifferent play options based on the defensive player positions and lineof sight.

In various embodiments, the content creators may also include realvideos showing the execution of the diagrams and include layovers of thediagrams versus the execution. For example, real game day video andlocation information may be utilized to diagram a player's movement. Forexample, location information may be captured using visual tracking,motion capture, or GPS or GPS like location tracking.

FIGS. 4A-4H depict example diagrams according to various embodiments.FIG. 5 depicts a method of predictive drawing and automatic animationgeneration according to various embodiments.

Referring to FIGS. 4A-4H and 5 with continued reference to FIG. 2 , invarious embodiments, the system (e.g., the diagram module 252) isconfigured to record drawing data provided by the user according to amethod of creating a diagram 500.

For example, a user may select to create a new content using the contentcreation module 250. The user may then select to create a new diagram(e.g., a new play) using the diagram module 252 and the animation module256 may concurrently create animations corresponding to the new diagram.In various embodiments, the user may be prompted to enter a play nameand to associate the play with an existing playbook or a new playbook.In various embodiments, the user may then be prompted to select asurface type may receive user input from the content creator device 220(S510). The selected surface may then be used to define a coordinateplan based around common sporting surfaces (example, an NBA basketballcourt, HS Basketball Court, NFL Football field, etc.). For example, asshown in FIG. 4A, an NBA basketball court 400 may be selected as asurface. Based on the selected surface, the diagram module 252 mayautomatically populate objects such as players 410, 420, 430, 440, 450,470, and physical objects (e.g., a ball) 460 associated with thesurface. In various embodiments, a coach 480 may also be included (e.g.,for the execution of a drill).

In various embodiments a user may then begin the placement of playersand/or objects (S520). For example, representations of people (players410-450, defenders 470, coaches 480, etc.) or objects (a ball 460,cones, machines, note bubbles, etc.) at their respective startingcoordinates on the surface. The user may the set the object/personattributes (S530). For example, the user may be allowed to record anyspecific attributes to the object/person. The attributes may includelabels, colors, or any other suitable attributes. The user may also setan attribute related to a player and an object. For example, thebeginning of a play may include an attribute related to the possessionof the ball 460. The animation module 256 may utilize the startinglocations for the beginning of an animation associated with the play.

In various embodiments, the user may begin drawing object/person actionsafter the starting positions of any people and/or objects have been set(S540). For example, the user may draw or trace actions 412, 422, 432,452 in the order that actions are meant to take place. For example, theuser may draw a player dribbling by drawing a zig zag shape between astarting location and an ending location. In another example, the usermay draw a line from a first player to a second player to indicate apass between players. In various embodiments, the diagram module 252 mayutilize a series of tests to determine the intended action type such ascurrent possession attributes, proximity to other players and theiractions, etc. The diagram module 252 may also update any possessionbased attributes to keep track of the location of each player 210-250.Furthermore, an action's animation duration 460 may be calculated bylooking at the length of the action's path, the action type, targetvelocity, etc., along with the total time of the current play. Forexample, a play may be designated as being 8 seconds long. Thus, it maybe assumed that each player will be at an ending location at the end of8 seconds and at various other locations based on the actions that aredefined in the play. For example, each of the traces may also beassociated with an animation indicative of the action taking place(e.g., a dribble or pass animation). For example, an actions startingpoint (e.g., a first location) may be utilized and the timing ofdependent (e.g., a pass and subsequent dribbling upon receiving the ball460) and related actions (e.g., concurrent movements) may automaticallybe inferred with any needed spacing (e.g., a pause between catching aball and beginning to dribble). For example, a first player 410 maytravel along a first path 412 and stop to set a screen. A fourth player440 may travel along a fourth path 422 and arrive at the end of the path412 at relatively the same time as the first player 410 (e.g., so thefirst player 410 may set a screen for the fourth player 440). Meanwhile,the second player 420 may travel along the second path 422 and the fifthplayer 450 may travel along the fifth path 452. The fourth player 440may arrive at a stopping location as the ball is passed by the thirdplayer 430 along the path 432. Thus, based on the action being taken,the timing of player movements 414, 424, 434, 444, 454 relative to eachother may be inferred.

In some embodiments, a user may need additional room to diagram the nextphase of a play. Thus, the user may select an option to create a newphase (S550). When a user selects to begin a new phase, the diagrammodule 252 may clear the surface 400 of all actions while maintainingthe locations and attributes of each player and object. All new actionsmay then be tagged as occurring during this phase and a new independenttimeline may be established. A user may select as many phases as theydesire. For example, FIGS. 4D and 4E depict examples of a multi-phaseplay and timeline components. For example, FIG. 4D includes a firstphase and the first timeline components and FIG. 4E includes a secondphase and second timeline component along with the first phase and firsttimeline components which are depicted in a lighter color to providecontext for the second phase while still allowing for the easy viewingof the second phase.

In various embodiments, the user may provide general play-related notes,add media such as videos, or add contextual notes to each play. Forexample, referring to FIG. 4F, a play may include walkthrough notes andembedded video and GIFs. Referring to FIG. 4G, a timing based contextualnote may be added for a certain part of a play.

In various embodiments, a user may elect to modify any locations and/oractions at any time. For example, referring to FIG. 4H, the user mayselect a player to modify the action that was automatically generated.For example, the user may change a screen to a cut (or vice versa) ormodify the line color.

For example, FIG. 6 depicts a play having a plurality of phasesaccording to various embodiments.

Referring to FIG. 6 , the play may include a first phase 600, a secondphase 610, a third phase 620, and a fourth phase 640. In variousembodiments, each of the phases may be associated with a color. Thus,the user may be able to cycle through the various phases and easilyidentify the current phase being displayed.

In various embodiments, a timeline 490 may be generated. For example,the diagram module may perform calculations on each action to maintaintheir relativity intact while expanding their durations so that thefinal action ends at 95% of the overall animation timeline. A user maymodify the timeline as necessary to provide the correct sequencing ofthe play. Once a play has been finalized, it may be saved anddistributed.

Thus, the diagram module 252 captures all aspects of the play asindicated by the user drawing as it relates to real-life movements(e.g., the sequencing and timing) instead of a print version of a playthat is static and shows all of the movements at the same time. Forexample, in various embodiments, the system infers a user's intentionand automatically assign options/attributes to every action removing thedependency on the user to set them. Using the data the system recordsabout what happens within a play, the system is able to give the user afully animated version of their drawing automatically when they completethe play instead of having to spend more time to create it.

FIG. 7 depicts an example animation according to various embodiments.

Referring to FIG. 7 , in various embodiments, the animation module 256may be utilized to preview the generated animation 700. After reviewingthe animation 700, the user may elect to return to the diagram module252 to adjust timing, routes, and actions as desired.

FIG. 8 depicts an example walkthrough and notes of a play according tovarious embodiments.

Referring to FIG. 8 , a user may provide any detailed walkthroughinformation and/or notes 800 to be associated with the play and later beviewed by another user.

FIGS. 9A and 9B depict different playbook representations according tovarious embodiments.

Referring to FIGS. 9A and 9B, in various embodiments, the content mayinclude a playbook having animated plays 906, video examples 902,contextual notes 905, and play call GIFs 903. The playbook may also beconfigurable based on user position and allows for plays to be modified.For example, the playbook may allow for the user to mirror the execution900 a, 900 b of the play across an axis. In various embodiments, thecontent may include personalized object, action, notation highlighting,spotlight focusing and or other methods to call attention to the user'srelevance to the displayed content.

FIG. 10 depicts an embedded video according to various embodiments.

Referring to FIG. 10 , the user may activate an embedded video 1000(e.g., a live action video) of the play being performed.

FIGS. 11A-F depict various stages of an animation according to variousembodiments.

Referring to FIGS. 11A-F, in various embodiments, the animation maybegin in a first position 1100 and transition to a second position 1110,third position 1120, fourth position 1130, fifth position 1140, andsixth position 1150 based on the timing of the play. In variousembodiments, the animation may transition between multiple phases of aplay.

FIGS. 12A and 12B depict examples of user position highlightingaccording to various embodiments.

Referring to FIGS. 12A and 12B, the system may be configured tohighlight notes directed towards a position input by a player. Forexample, the play 1200 may be customized to be viewed by a playerplaying the “1” position and the walkthrough includes highlighted noteelements 1202, 1204 that correspond to the “1” position. Similarly theplay 1210 may be customized to be viewed by a player playing the “4”position and the walkthrough includes highlighted note elements 1212that corresponds to the “4” position.

FIG. 13 depicts an example menu for creating or editing a play, chapteror group according to various embodiments.

Referring to FIG. 13 , in various embodiments, the menu 1300 may includean option to create or edit a play, chapter, or group. In variousembodiments, the menu may include one or more sub-menus 1310 thatinclude options to automatically generate memory games 1320 for theplay, chapter, or group being created or edited.

FIG. 14 depicts a method of the generation and playing of memorizationgames according to various embodiments.

Referring to FIG. 2 and FIG. 14 , in various embodiments, the system isconfigured to automatically generate personalized memorization gamesusing the drawing and animation data (e.g., the drawing and animationinformation discussed above with reference to FIGS. 2-8 ).

In various embodiments, the system's 200 method of recording drawingdata using the diagram module 252 and the animation module 256 allowsfor the capture of locations, sequence, and timing of people of objectsallows the system 200 to create a complete data representation of whenevery action happens and what it is dependent upon. Thus, the gamemodule 258 may utilize the previously entered diagram and animationdata. Thus, in various embodiments, instead of only utilizing drawingdata, the game module 258 may utilize the location, sequence, and timingdata that is acquired based on player movement throughout a play. Invarious embodiments, the movement may also be captured using video data(e.g. using automated analysis of images and/or videos) or location datatracked by a GPS-like system (an indoor or outdoor position trackingsystem). In various embodiments, the game questions may be generated bythe game module 258 operating on the content creator device 220 or maybe generated by the game module 234 operating on the content consumerdevice.

In various embodiments, the game module may use the acquired data (e.g.,from the diagram module 252 and/or the animation module 256, or usinganother data capture method) and identify which object/person in adrawing the user relates to (e.g., based on sport's position), and whatactions are their individual responsibility and what/who they depend on.The game module is further configured to identify all of the associatedassets (e.g., images, video, diagrams, animations, motion capture, orother suitable assets) associated with a drawing to use as a possiblequestion/answer set.

In various embodiments, when a user wishes to play a memorization game,the user may begin by selecting a source for generating the game (i.e.,what the user would like to work on memorizing or to test theirknowledge) (S1410). The user then selects an existing set of plays(e.g., playbook chapter), or creates a new one ad-hoc selectingindividual drawings to include to turn into a memory game. This is a‘one-button’ option the user chooses to make these plays available formemory games.

In various embodiments, a user then launches one of the available memorygames (S1420), and identifies which chapter, game type, and questiontypes they wish to play (S1430). The game module 258 may access thecollection of drawings (e.g., diagrams), and the user's identifyingattributes (e.g., position), and creates a randomized question order.Options for randomization include correct answer, possible wronganswers, question type, question order, etc. For example, by addingrandomization, every time a user launches the game module 258, the gamemodule 258 may provide a new experience, even if using the same set andgame type.

A user is then asked a series of questions based on the selectedcriteria (S1440). If user answers correctly, the user is attributed ascore for the answer, a total score may be incremented according to thescore, and the game module 256 moves on to the next question. In variousembodiments, when a user answers incorrectly they may be forced to viewan animation or diagram illustrating the correct answer before moving on(S1450). In various embodiments, the questions may be based upon adrawing in general (e.g., “What is this drawing's name?”) or about theactions inside a drawing (e.g., “where do you setup?”, “Trace your firstcut.”, “Where do you pass next?”) or any other suitable source.

When a user ends a game, either by quitting or time-expiring, theirfinal total game score along with all details about every questionanswer are recorded for tracking their participation and progress. Invarious embodiments, a leader board may be displayed to the user. Invarious embodiments, multiple leader boards may be displayed based onindividual games and/or challenges. For example, a challenge may beinitiated by another user such as a coach or other player. Scores,badges, and awards may be achieved based on the results of the challengeand displayed as part of the lead board or in conjunction with theleader board. In various embodiments, the user's score may be based onwhether the answer was correct, an error margin for the question, aresponse time, a correct answer streak, and/or any other suitablemetric.

FIGS. 15A-15D depict potential questions according to variousembodiments.

Referring to FIGS. 15A-15D, in various embodiments, as discussed above,the game module 258 may be configured to generate and display questionsbased upon the diagrams generated in conjunction with user input. Invarious embodiments, a question may require a user to indicate alocation. For example, the question module may be configured to randomlyselect a play from a playbook and randomly select a question typerelated to the play. In various embodiments, the question type may berelated to the user's identified position. For example, in FIG. 15A, thequestion may entail the user being of position type “2” and the questionmay prompt the user to indicate on the diagram 1500 where the user issupposed to setup at the beginning of the play. For example, the usermay indicate the location 1502 as their setup location by providing aninput (e.g., a touch or mouse input) to the user's device. In thisexample, the user indicated the incorrect starting or set up location1502. In various embodiments, the correct location 1504 may be displayedafter an incorrect answer. In another example, the user may be provideda question that prompts the user to indicate where they are supposedmove during a play. The question is generated using the diagraminformation and the player's route is removed. For example, in FIG. 15B,the user has been prompted to trace where the player is supposed tomove. In this example, the user may again be of the position of type “2”and has provided the trace 1512 as an input. In this example, the userwas incorrect and the correct trace 1514 is displayed. FIGS. 15-15Ddepict further example questions 1520, 1530 that the user answeredcorrectly. In these cases, the user receives points for the correctanswer and their score is incremented. In various embodiments, eachquestion may be associated with an error margin. For example, a user mayindicate a location or trace that is relatively correct, but not at theexact location of the correct answer. In various embodiments, the errormargin may include a radius (e.g., a creator defined radius) around alocation or along a path.

FIGS. 16A and 16B depict memory games that involve embedded videosaccording to various embodiments.

Referring to FIGS. 16A and 16B, in various embodiments, memory gamesfeaturing live videos 1600, 1650 associated with a play may begenerated. The memory game may include showing a video clip and thenfreezing the video clip at a frame where a player makes a decision aboutthe play. For example, the user may have to select a path 1610, 1620,1630, 1660, 1670 associated with the play being performed. In variousembodiments, there may be a countdown timer 1640 for how long the userhas to answer the question to achieve a score. When a user selects acorrect path 1660 before the countdown timer reaches zero, the user maybe awarded points.

FIGS. 17A-17C depict memory games according to various embodiments.

Referring to FIGS. 17A-17C, in various embodiments, memory games may beconfigured to show a content 1700, 1710, 1720 and select the correctplay name associated with the content. For example, in variousembodiments, the content may include a play animation 1700, a video1710, or static play images 1720.

FIGS. 18-20 depict various reports that may be generated and displayedbased on user use of the system according to various embodiments.

Referring to FIG. 18 , in various embodiments the system may log the useof the system. For example, the system (e.g., via the reports module236) may keep track each question answered along with information aboutthe question and metrics 1800 related to the user answering thequestion. For example, in various embodiments, the system may log thedate and time of the user's answering of the question, the game chapterthat the question is base on, the game type associated with thequestion, and the question type. In various embodiments the metrics mayinclude the amount of time it took for the user to answer the question(e.g., the response time), whether the user answered correctly, an errormargin of the user's provided answer, the score awarded for the answer,and any other suitable metric.

Referring to FIGS. 19 and 20 , in various embodiments, the system mayalso provide various visualizations for relaying the user's systemusage. For example, the system may provide the visualizations 1900 fordisplaying information related to the user's access to plays 1910 (e.g.,total number of plays viewed as diagrams, animations, and videos), fordisplaying information related to the user's access to games 1920 (e.g.,the total number of games played, the average score of the games played,the most frequent game chapter used, and the most frequent game played),and for displaying information related to the time spent by the user1930 (e.g., a graphical view of the dates and times of the user's accessof the system). In various embodiments, the system may also provide moredetailed visualizations. For example, the user may view more detailedgaming history 2010 and playbook history 2030. The system may alsoprovide graphical information showing the user's usage history 2020.

FIG. 21 depicts an example method of distributing diagrams and updatesto users.

Referring to FIG. 21 , in various embodiments, the system is configuredto allow for the distribution of new diagrams and updated diagrams tousers 2100. In various embodiments, a user (e.g., a coach) may elect tocreate a new diagram or edit an existing diagram (S2110). The user mayutilize the content creation module 250 to generate and edit thediagrams. Once the changes/new diagrams are complete the user maypublish the diagrams by uploading them from their device 220 to a server(e.g., to a database 120 operating on remote server depicted in FIG. 1 )(S2120). Once new or updated diagrams are received at the server, theserver may automatically notify the appropriate consuming devices of thenew content and prompt content viewing modules 230 may prompt thecontent consumer devices to download the new content (S2130). Uponinitiating the download, the content consumer device builds a downloadqueue (S2140) by checking for any missing assets (e.g., diagrams,animations, videos, etc.). The download of the missing assets is thenstarted and each asset becomes available for use once downloaded.

In the preceding description, for the purposes of explanation, numerousspecific details are set forth to provide a thorough understanding ofvarious embodiments. It is apparent, however, that various embodimentsmay be practiced without these specific details or with one or moreequivalent arrangements. In other instances, well-known structures anddevices are shown in block diagram form in order to avoid unnecessarilyobscuring various embodiments.

It will be understood that when an element, layer, region, or componentis referred to as being “on,” “connected to,” or “coupled to” anotherelement, layer, region, or component, it can be directly on, connectedto, or coupled to the other element, layer, region, or component, or oneor more intervening elements, layers, regions, or components may bepresent. However, “directly connected/directly coupled” refers to onecomponent directly connecting or coupling another component without anintermediate component. Meanwhile, other expressions describingrelationships between components such as “between,” “immediatelybetween” or “adjacent to” and “directly adjacent to” may be construedsimilarly. In addition, it will also be understood that when an elementor layer is referred to as being “between” two elements or layers, itcan be the only element or layer between the two elements or layers, orone or more intervening elements or layers may also be present.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the presentdisclosure. As used herein, the singular forms “a” and “an” are intendedto include the plural forms as well, unless the context clearlyindicates otherwise. It will be further understood that the terms“comprises,” “comprising,” “have,” “having,” “includes,” and“including,” when used in this specification, specify the presence ofthe stated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or 10more other features, integers, steps, operations, elements, components,and/or groups thereof. As used herein, the term “and/or” includes anyand all combinations of one or more of the associated listed items.

As used herein, the term “substantially,” “about,” “approximately,” andsimilar terms are used as terms of approximation and not as terms ofdegree, and are intended to account for the inherent deviations inmeasured or calculated values that would be recognized by those ofordinary skill in the art. “About” or “approximately,” as used herein,is inclusive of the stated value and means within an acceptable range ofdeviation for the particular value as determined by one of ordinaryskill in the art, considering the measurement in question and the errorassociated with measurement of the particular quantity (i.e., thelimitations of the measurement system). For example, “about” may meanwithin one or more standard deviations, or within±30%, 20%, 10%, 5% ofthe stated value. Further, the use of “may” when describing embodimentsof the present disclosure refers to “one or more embodiments of thepresent disclosure.” As used herein, the terms “use,” “using,” and“used” may be considered synonymous with the terms “utilize,”“utilizing,” and “utilized,” respectively. Also, the term “exemplary” isintended to refer to an example or illustration.

When a certain embodiment may be implemented differently, a specificprocess order may be performed differently from the described order. Forexample, two consecutively described processes may be performedsubstantially at the same time or performed in an order opposite to thedescribed order.

Various embodiments are described herein with reference to sectionalillustrations that are schematic illustrations of embodiments and/orintermediate structures. As such, specific structural or functionaldescriptions disclosed herein are merely illustrative for the purpose ofdescribing embodiments according to the concept of the presentdisclosure.

The electronic or electric devices and/or any other relevant devices orcomponents according to embodiments of the present disclosure describedherein may be implemented utilizing any suitable hardware, firmware(e.g. an application-specific integrated circuit), software, or acombination of software, firmware, and hardware. For example, thevarious components of these devices may be formed on one integratedcircuit (IC) chip or on separate IC chips. Further, the variouscomponents of these devices may be implemented on a flexible printedcircuit film, a tape carrier package (TCP), a printed circuit board(PCB), or formed on one substrate. Further, the various components ofthese devices may be a process or thread, running on one or moreprocessors, in one or more computing devices, executing computer programinstructions and interacting with other system components for performingthe various functionalities described herein. The computer programinstructions are stored in a memory which may be implemented in acomputing device using a standard memory device, such as, for example, arandom access memory (RAM). The computer program instructions may alsobe stored in other non-transitory computer readable media such as, forexample, a CD-ROM, flash drive, or the like. Also, a person of skill inthe art should recognize that the functionality of various computingdevices may be combined or integrated into a single computing device, orthe functionality of a particular computing device may be distributedacross one or more other computing devices without departing from thespirit and scope of the exemplary embodiments of the present disclosure.

Unless otherwise defined, all terms (including technical and scientificterms) used herein have the same meaning as commonly understood by oneof ordinary skill in the art to which the present disclosure belongs. Itwill be further understood that terms, such as those defined in commonlyused dictionaries, should be interpreted as having a meaning that isconsistent with their meaning in the context of the relevant art and/orthe present specification, and should not be interpreted in an idealizedor overly formal sense, unless expressly so defined herein.

The foregoing is illustrative of example embodiments, and is not to beconstrued as limiting thereof. Although a few example embodiments havebeen described, those skilled in the art will readily appreciate thatmany modifications are possible in the example embodiments withoutmaterially departing from the novel teachings and advantages of exampleembodiments. Accordingly, all such modifications are intended to beincluded within the scope of example embodiments as defined in theclaims. In the claims, means-plus-function clauses are intended to coverthe structures described herein as performing the recited function andnot only structural equivalents but also equivalent structures.Therefore, it is to be understood that the foregoing is illustrative ofexample embodiments and is not to be construed as limited to thespecific embodiments disclosed, and that modifications to the disclosedexample embodiments, as well as other example embodiments, are intendedto be included within the scope of the claims and their equivalents.

What is claimed is:
 1. An electronic sports playbook system, comprising:a. an electronic device including: i. a display device; ii. an inputmechanism; iii. a processor; iv. a network interface; v. a memorycoupled to the processor, wherein the memory stores instructions that,when executed by the processor, cause the processor to, in any order: 1.display an image of a surface on the display device;
 2. detect an objecton the surface;
 3. detect a drawing of a path relating to the objectfrom a first location on the surface to an end location on the surface;4. determine at least one action based on at least (a) the object, (b)an attribute of the object relating to possession of a ball, and (c) thepath of the object.
 2. The electronic sports playbook system of claim 1,wherein the input mechanism is a coordinate input device and the objectis detected on the surface based on a coordinate of the object receivedfrom the input mechanism.
 3. The electronic sports playbook system ofclaim 1, wherein the action is determined to be a dribbling movementwhen: (a) the object is a player, (b) the attribute of the objectrelating to the possession of the ball indicates that the player has theball, and (c) the end location of the path is another location on thesurface that is not occupied by another player.
 4. The electronic sportsplaybook system of claim 1, wherein the action is determined to be apass when: (a) the object is a player, (b) the attribute of the objectrelating to the possession of the ball indicates that the player has theball, and (c) the end location of the path is another location on thesurface that is occupied by another player.
 5. The electronic sportsplaybook system of claim 1, wherein the action is determined to be ahandoff when: (a) the object is a player, (b) the attribute of theobject relating to the possession of the ball indicates that the playerhas the ball, (c) the first location of the path is near the player, (d)the end location of the path is another location on the surface that isoccupied by another player, and (e) the distance between the firstlocation and the end location of the path is relatively short.
 6. Theelectronic sports playbook system of claim 1, wherein the action isdetermined to be a cut when: (a) the object is a player, (b) theattribute of the object relating to the possession of the ball indicatesthat the player does not have the ball, and (c) the end location of thepath is another location on the surface that is not occupied by anotherplayer.
 7. The electronic sports playbook system of claim 1, wherein theaction is determined to be a screen when: (a) the object is a player,(b) the attribute of the object relating to the possession of the ballindicates that the player does not have the ball, and (c) the endlocation of the path is another location on the surface that is near alocation or path associated with another player.
 8. The electronicsports playbook system of claim 1, wherein the surface is an image of aplay.
 9. The electronic sports playbook system of claim 8, wherein theobject is detected on the surface with image processing, machinelearning, or other heuristic techniques performed on the image of theplay.
 10. The electronic sports playbook system of claim 9, wherein theobject is determined to be either: a player, the ball, or a goal, usingimage processing, machine learning, or other heuristic techniquesperformed on the image of the play.
 11. The electronic sports playbooksystem of claim 9, wherein the object is determined to be a player andan attribute relating to possession of the ball associated with theplayer is determined with image processing, machine learning, or otherheuristic techniques performed on the image of the play.
 12. Theelectronic sports playbook system of claim 11, wherein determining theattribute relating to possession of the ball associated with the playeris based on a comparison of the location on the surface of an objectdetermined to be a ball to the location on the surface of the objectdetermined to be the player.
 13. The electronic sports playbook systemof claim 12, wherein the attribute relating to possession of the ballassociated with the player indicates possession of the ball when thelocation on the surface of an object determined to be a ball correspondsto the location on the surface of the object determined to be theplayer.
 14. The electronic sports playbook system of claim 12, whereinthe attribute relating to possession of the ball associated with theplayer indicates no possession of the ball when the location on thesurface of an object determined to be a ball does not correspond to thelocation on the surface of the object determined to be the player. 15.The electronic sports playbook system of claim 12, wherein the action isdetermined to be a dribbling movement when: (a) the object is a player,(b) the attribute of the object relating to the possession of the ballindicates that the player has the ball, and (c) the end location of thepath is another location on the surface that is not occupied by anotherplayer.
 16. The electronic sports playbook system of claim 12, whereinthe action is determined to be a pass when: (a) the object is a player,(b) the attribute of the object relating to the possession of the ballindicates that the player has the ball, and (c) the end location of thepath is another location on the surface that is occupied by anotherplayer.
 17. The electronic sports playbook system of claim 12, whereinthe action is determined to be a handoff when: (a) the object is aplayer, (b) the attribute of the object relating to the possession ofthe ball indicates that the player has the ball, (c) the first locationof the path is near the player, (d) the end location of the path isanother location on the surface that is occupied by another player, and(e) the distance between the first location and the end location of thepath is relatively short.
 18. The electronic sports playbook system ofclaim 12, wherein the action is determined to be a cut when: (a) theobject is a player, (b) the attribute of the object relating to thepossession of the ball indicates that the player does not have the ball,and (c) the end location of the path is another location on the surfacethat is not occupied by another player.
 19. The electronic sportsplaybook system of claim 12, wherein the action is determined to be ascreen when: (a) the object is a player, (b) the attribute of the objectrelating to the possession of the ball indicates that the player doesnot have the ball, and (c) the end location of the path is anotherlocation on the surface that is near a location or path associated withanother player.
 20. The electronic sports playbook system of claim 8wherein the image of the play is a frame from a video recording.
 21. Theelectronic sports playbook system of claim 1 wherein the memory coupledto the processor stores instructions that, when executed by theprocessor, cause the processor to generate an animation based on thedetected object, the detected path, and the determined action.